#!/bin/bash

# 检查是否提供了提交信息
if [ -z "$1" ]
then
    echo "错误：请提供提交备注说明。"
    echo "用法: $0 \"提交备注说明\""
    exit 1
fi

# 定义提交信息变量
commit_message=$1

# 切换到包含 .git 的目录，假设脚本在项目根目录运行
cd "$(git rev-parse --show-toplevel)"

# 拉取最新的远程分支内容
echo "正在更新本地仓库..."
git pull origin master --rebase

# 添加所有更改到暂存区
echo "正在添加更改..."
git add .

# 检查是否有更改需要提交
if git diff-index --quiet HEAD --; then
    echo "没有更改，无需提交。"
    exit 0
fi

# 提交更改
echo "正在提交更改..."
git commit -m "$commit_message"

# 推送更改到远程仓库
echo "正在推送更改..."
git push origin master

echo "提交完成。"